package cn.wolfcode.rbac.mapper;

import cn.wolfcode.rbac.domain.Permission;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Set;

public interface PermissionMapper {
    //根据id查询权限
    Permission selectById(Long id);
    //查询所有权限
    Set<Permission> selectAll();
    // 查询分页数据
    List<Permission> queryForList();
    // 批量插入权限
    int batchInsertPermissions(@Param("permissions") Set<Permission> permissions);
    // 查询符合条件的权限数量
    List<Long> selectByIds(List<Long> ids);

    // 根据员工ID查询表达式
    Set<String> selectExpressionByEmpId(@Param("empId") Long empId);
    // 查询所有的权限表达式
    Set<String> selectAllExpression();
}
